package com.cwl.pattern.访问者模式;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * @program: pattern
 * @description: 对象结构角色
 * @author: ChenWenLong
 * @create: 2019-07-10 11:51
 **/
public class ObjectStructure {

    private List<Element> list=new ArrayList<Element>();

    //接收一个观察者
    public void accept(Visitor visitor) {
        Iterator<Element> i=list.iterator();
        while(i.hasNext()) {
            ((Element) i.next()).accept(visitor);
        }
    }

    //添加一个原色
    public void add(Element element) {
        list.add(element);
    }

    //删除一个元素
    public void remove(Element element) {
        list.remove(element);
    }
}
